package com.dingding.service.activity.core.dao;

import java.util.List;

import com.dingding.common.core.base.dao.IBaseDao;
import com.dingding.common.core.beans.Activity;
import com.dingding.facde.activity.dto.indexmodule.GetIndexModulesDto;
import com.dingding.facde.activity.dto.shareplan.SharePlanDto;

/**
 * @ClassName: IActivityDao
 * @Description: 活动模块DAO接口
 * @author yuHaiQing
 * @date 2016年3月24日 上午11:38:09
 */
public interface IActivityDao extends IBaseDao<Activity> {

	/**
	 * @Title: getActivityList
	 * @Description: 获取全部有效的活动列表
	 * @author yuHaiQing
	 * @return List<Activity>    返回类型
	 */
	public List<Activity> getActivityList();

	/**
	 * @Title: getActivityInfo
	 * @Description: 根据活动Id获取活动详情
	 * @param  snId 活动Id
	 * @author yuHaiQing
	 * @return Activity    返回类型
	 */
	public Activity getActivityInfo(String snId);

	/**
	 * @Title: resetInvalidActivity 
	 * @Description: 重置无效活动
	 * @author YHQ 
	 * @return boolean    true:重置成功  false:失败
	 */
	public boolean resetInvalidActivity();
	
	
	/**
	 * @Description: 获取用户活动列表
	 * @param userId 用户登录id
	 * @param pageIndex 当前页
	 * @author fengshuonan
	 * @return List<Activity> 活动列表
	 * @since 2.3.2
	 */
	public List<Activity> getActivityList(String userId,Integer pageIndex);

	/**
	 * @Description: 获取主页模块列表
	 * @param cityNo 城市编号
	 * @author fengshuonan
	 * @return List<GetIndexModulesDto>
	 * @since 2.4
	 */
	public List<GetIndexModulesDto> getIndexModuleList(String cityNo);
	
	
	/**
	 * @Description:获取共享计划列表
	 * @param cityNo 城市编号
	 * @author fengshuonan
	 * @return List<SharePlanDto> 共享计划列表
	 * @since 2.4
	 */
	public List<SharePlanDto> getSharePlanList(String cityNo);
}
